package com.wclass.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

/**
 * <p>
 * 机构、团队
 * </p>
 *
 * @author SEN
 * @since 2019-02-27
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("base_organ")
@ApiModel("机构、团队")
public class BaseOrgan extends SuperEntity<BaseOrgan> {

    /**
     * 机构名称
     */
    @ApiModelProperty("机构名称")
    private String name;
    /**
     * 机构负责人电话
     */
    @ApiModelProperty("机构负责人电话")
    private String phone;
    /**
     * 机构logo
     */
    @ApiModelProperty("机构logo")
    @TableField("institution_logo")
    private String institutionLogo;
    /**
     * 是否删除 0：有效，1：禁用 
     */
    @ApiModelProperty("是否删除 0：有效，1：禁用")
    private Integer state;
    /**
     * 关注数
     */
    @ApiModelProperty("关注数")
    @TableField("focus_num")
    private Integer focusNum;
    /**
     * 课程数
     */
    @ApiModelProperty("课程数")
    @TableField("course_num")
    private Integer courseNum;
    /**
     * 学生数
     */
    @ApiModelProperty("学生数")
    @TableField("student_num")
    private Integer studentNum;
    /**
     * 好评百分比
     */
    @ApiModelProperty("好评百分比")
    @TableField("praise_num")
    private String praiseNum;
    /**
     * 机构介绍
     */
    @ApiModelProperty("机构介绍")
    @TableField("institution_intro")
    private String institutionIntro;
    /**
     * 机构审核状态（0：未审核 1：已审核 2：审核未通过）
     */
    @ApiModelProperty("机构审核状态（0：未审核 1：已审核 2：审核未通过）")
    @TableField("audit_status")
    private Integer auditStatus;
    /**
     * 机构详情
     */
    @ApiModelProperty("机构详情")
    @TableField("institution_detail")
    private String institutionDetail;
    /**
     * 机构审核时间
     */
    @ApiModelProperty("机构审核时间")
    @TableField("audit_time")
    private Date auditTime;
    /**
     * 机构等级
     */
    @ApiModelProperty("机构等级")
    @TableField("institution_level")
    private String institutionLevel;
    /**
     * 机构负责人
     */
    @ApiModelProperty("机构负责人")
    @TableField("institution_belong")
    private String institutionBelong;

    /**
     * 机构营业代码
     */
    @ApiModelProperty("机构营业代码")
    @TableField("institution_code")
    private String institutionCode;

    /**
     * 机构营业执照
     */
    @ApiModelProperty("机构营业执照")
    @TableField("institution_license")
    private String institutionLicense;
    /**
     * 机构创建人身份证正面
     */
    @ApiModelProperty("机构创建人身份证正面")
    @TableField("institution_belong_front_card")
    private String institutionBelongFrontCard;
    /**
     * 机构创建人身份证反面
     */
    @ApiModelProperty("机构创建人身份证反面")
    @TableField("institution_belong_after_card")
    private String institutionBelongAfterCard;
    /**
     * 机构创建人手执身份证
     */
    @ApiModelProperty("机构创建人手执身份证")
    @TableField("institution_belong_hand_card")
    private String institutionBelongHandCard;
    /**
     * 机构审批意见
     */
    @ApiModelProperty("机构审批意见")
    @TableField("audit_opinion")
    private String auditOpinion;
    /**
     * 是否禁用 0：有效，1：禁用
     */
    @ApiModelProperty("是否禁用 0：有效，1：禁用")
    private Integer disabled;
    /**
     * 机构教学领域
     */
    @ApiModelProperty("机构教学领域")
    @TableField("teaching_domain")
    private String teachingDomain;
    /**
     * 机构邮箱
     */
    @ApiModelProperty("机构邮箱")
    private String email;
    /**
     * 机构公司全称
     */
    @ApiModelProperty("机构公司全称")
    @TableField("company_name")
    private String companyName;
    /**
     * 机构公司创建时间
     */
    @ApiModelProperty("机构公司创建时间")
    @TableField("company_crt_time")
    private Date companyCrtTime;
    /**
     * 机构运营时长
     */
    @ApiModelProperty("机构运营时长")
    @TableField("company_operation")
    private String companyOperation;
    /**
     * 机构公司简介
     */
    @ApiModelProperty("机构公司简介")
    @TableField("company_intro")
    private String companyIntro;
    /**
     * 机构公司环境
     */
    @ApiModelProperty("机构公司环境")
    @TableField("company_environment")
    private String companyEnvironment;
    /**
     * 机构财务表报
     */
    @ApiModelProperty("机构财务表报")
    @TableField("company_finance")
    private String companyFinance;
    /**
     * 机构特色课程
     */
    @ApiModelProperty("机构特色课程")
    @TableField("company_course")
    private String companyCourse;
    /**
     * 机构在线授课案例
     */
    @ApiModelProperty("机构在线授课案例")
    @TableField("company_case")
    private String companyCase;
    /**
     * 机构新浪微博
     */
    @ApiModelProperty("机构新浪微博")
    private String sina;
    /**
     * 机构微信公众号
     */
    @ApiModelProperty("机构微信公众号")
    private String weixin;
    /**
     * 机构其他平台
     */
    @ApiModelProperty("机构其他平台")
    private String terrace;

    @ApiModelProperty("机构收款账户")
    @TableField("collection_account")
    private String collectionAccount;

    @ApiModelProperty("机构开户号")
    @TableField("opening_bank")
    private String openingBank;

    @ApiModelProperty("机构开户证明")
    @TableField("opening_prove")
    private String openingProve;
    /**
     * 申请人员id
     */
    @ApiModelProperty("申请人员id")
    @TableField("user_id")
    private Long userId;
    /**
     * 类型，1：机构，2：团队
     */
    @ApiModelProperty("类型，1：机构，2：团队")
    private Integer type;
    /**
     * 平台推荐，0：否，1：是
     */
    @ApiModelProperty("平台推荐，0：否，1：是")
    private Integer platform;
    /**
     * 团队简介
     */
    @ApiModelProperty("团队简介")
    @TableField("team_intro")
    private String teamIntro;
    /**
     * 团队简介图片
     */
    @ApiModelProperty("团队简介图片")
    @TableField("team_intro_pic")
    private String teamIntroPic;
    /**
     * 团队宣传图片list
     */
    @ApiModelProperty("团队宣传图片list")
    @TableField(exist = false)
    List<BaseTeamPic> teamPicList;
    /**
     * 团队发展历程list
     */
    @ApiModelProperty("团队发展历程list")
    @TableField(exist = false)
    List<BaseTeamDevelopHistory> teamDevelopHistoryList;
    /**
     * 团队课程合辑list
     */
    @ApiModelProperty("团队课程合辑list")
    @TableField(exist = false)
    List<BaseTeamCourseIntro> teamCourseIntroList;
    /**
     * 团队教师展示list
     */
    @ApiModelProperty("团队教师展示list")
    @TableField(exist = false)
    List<BaseTeamUser> teamUserList;


}
